package es.index.util;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @author zhoujin 类型验证
 */
public final class TypeVerify {
	private static SimpleDateFormat _sdf = new SimpleDateFormat("yyyy-MM-dd");

	private TypeVerify() {
	}

	/** 判断一个字符串是否是数字 */
	public static Integer isInt(String str) {
		/*
		 * 判断正整数 Pattern pattern = Pattern.compile("[0-9]*"); return
		 * pattern.matcher(str).matches();
		 */
		try {
			return Integer.parseInt(str);
		} catch (NumberFormatException e) {
		}
		return null;
	}

	/**
	 * 判断一个字符串是否是Long型数字
	 * 
	 * @param str
	 * @return
	 */
	public static Long isLong(String str) {
		try {
			return Long.parseLong(str);
		} catch (Exception e) {
		}
		return null;
	}

	/** 判断是否是单精度浮点数 */
	public static Float isFloat(String str) {
		try {
			return Float.parseFloat(str);
		} catch (NumberFormatException e) {
		}
		return null;
	}

	/** 判断是否是双精度浮点数 */
	public static Double isDouble(String str) {
		try {
			return Double.parseDouble(str);
		} catch (NumberFormatException e) {
		}
		return null;
	}

	/** 将几个字符串转换为date */
	public static Date isDate(String str) {
		Date date = null;
		try {
			date = _sdf.parse(str);
		} catch (java.text.ParseException e) {
		}
		return date;
	}
}
